<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>kali工具箱</title>
<script src="./static/bootstrap.min.js"></script>
<link rel="stylesheet" href="./static/main.css">
<link rel="stylesheet" href="./static/bootstrap.min.css">
<style type="text/css" id="syntaxhighlighteranchor"></style>
</head>
<main class="main-container ng-scope" ng-view="">
<div class="main receptacle post-view ng-scope">
<article class="entry ng-scope" ng-controller="EntryCtrl" ui-lightbox="">
<section class="entry-content ng-binding" ng-bind-html="postContentTrustedHtml">
<section class="l-section"><div class="l-section-h i-cf"><h2>apktool Package Description</h2>
<p style="text-align: justify;">It is a tool for reverse engineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications; it makes possible to debug smali code step by step. Also it makes working with app easier because of project-like files structure and automation of some repetitive tasks like building apk, etc. </p>
<p>It is NOT intended for piracy and other non-legal uses. It could be used for localizing, adding some features or support for custom platforms and other GOOD purposes. Just try to be fair with authors of an app, that you use and probably like.</p>
<p>Features:</p>
<ul>
<li>decoding resources to nearly original form (including resources.arsc, XMLs and 9.png files) and rebuilding them</li>
<li>smali debugging: SmaliDebugging</li>
<li>helping with some repetitive tasks</li>
</ul>
<p>Source: https://code.google.com/p/android-apktool/<br>
<a href="http://code.google.com/p/android-apktool/" variation="deepblue" target="blank">apktool Homepage</a> | <a href="http://git.kali.org/gitweb/?p=packages/apktool.git;a=summary" variation="deepblue" target="blank">Kali apktool Repo</a></p>
<ul>
<li>Author: Brut.alll</li>
<li>License: Apache-2.0</li>
</ul>
<h3>Tools included in the apktool package</h3>
<h5>apktool – A tool for reengineering Android apk files</h5>
<code><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="1c6e7373685c777d7075">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>:~# apktool<br>
Apktool v1.5.2 - a tool for reengineering Android apk files<br>
Copyright 2010 Ryszard Wiśniewski &lt;<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="264454535208474a4a4a66414b474f4a0845494b">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>&gt;<br>
with smali v1.4.1, and baksmali v1.4.1<br>
Updated by @iBotPeaches &lt;<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="9bf8f4f5f5f4e9b5efeef6f9f7fee8f4f5dbfcf6faf2f7b5f8f4f6">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>&gt;<br>
Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)<br>
<br>
Usage: apktool [-q|--quiet OR -v|--verbose] COMMAND [...]<br>
<br>
COMMANDs are:<br>
<br>
    d[ecode] [OPTS] &lt;file.apk&gt; [&lt;dir&gt;]<br>
        Decode &lt;file.apk&gt; to &lt;dir&gt;.<br>
<br>
        OPTS:<br>
<br>
        -s, --no-src<br>
            Do not decode sources.<br>
        -r, --no-res<br>
            Do not decode resources.<br>
        -d, --debug<br>
            Decode in debug mode. Check project page for more info.<br>
        -b, --no-debug-info<br>
            Baksmali -- don't write out debug info (.local, .param, .line, etc.)<br>
        -f, --force<br>
            Force delete destination directory.<br>
        -t &lt;tag&gt;, --frame-tag &lt;tag&gt;<br>
            Try to use framework files tagged by &lt;tag&gt;.<br>
        --frame-path &lt;dir&gt;<br>
            Use the specified directory for framework files<br>
        --keep-broken-res<br>
            Use if there was an error and some resources were dropped, e.g.:<br>
            "Invalid config flags detected. Dropping resources", but you<br>
            want to decode them anyway, even with errors. You will have to<br>
            fix them manually before building.<br>
<br>
    b[uild] [OPTS] [&lt;app_path&gt;] [&lt;out_file&gt;]<br>
        Build an apk from already decoded application located in &lt;app_path&gt;.<br>
<br>
        It will automatically detect, whether files was changed and perform<br>
        needed steps only.<br>
<br>
        If you omit &lt;app_path&gt; then current directory will be used.<br>
        If you omit &lt;out_file&gt; then &lt;app_path&gt;/dist/&lt;name_of_original.apk&gt;<br>
        will be used.<br>
<br>
        OPTS:<br>
<br>
        -f, --force-all<br>
            Skip changes detection and build all files.<br>
        -d, --debug<br>
            Build in debug mode. Check project page for more info.<br>
        -a, --aapt<br>
            Loads aapt from specified location.<br>
<br>
    if|install-framework &lt;framework.apk&gt; [&lt;tag&gt;] --frame-path [&lt;location&gt;]<br>
        Install framework file to your system.<br>
<br>
For additional info, see: http://code.google.com/p/android-apktool/<br>
For smali/baksmali info, see: http://code.google.com/p/smali/</code>
<h3>apktool Usage Example</h3>
<p>Use debug mode <b><i>(d)</i></b> to decode the given apk file <b><i>(/root/SdkControllerApp.apk)</i></b>:</p>
<code><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="33415c5c477358525f5a">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>:~# apktool d /root/SdkControllerApp.apk <br>
I: Baksmaling...<br>
I: Loading resource table...<br>
I: Loaded.<br>
I: Decoding AndroidManifest.xml with resources...<br>
I: Loading resource table from file: /root/apktool/framework/1.apk<br>
I: Loaded.<br>
I: Regular manifest package...<br>
I: Decoding file-resources...<br>
I: Decoding values */* XMLs...<br>
I: Done.<br>
I: Copying assets and libs...</code>
</div></section><div style="display:none">
<script src="//s11.cnzz.com/z_stat.php?id=1260038378&web_id=1260038378" language="JavaScript"></script>
</div>
</main></body></html>
